﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Workflows.Components.Entities.Persons
{
    [Serializable]
    public class Address:Entity
    {
        #region props
        private AddressType _AddressType;
        /// <summary></summary>
        public AddressType AddressType
        {
            get
            {
                return this._AddressType;
            }
            set
            {
                this._AddressType = value;
            }
        }

        private string _Address1;
        /// <summary></summary>
        public string Address1
        {
            get
            {
                return this._Address1;
            }
            set
            {
                this._Address1 = value;
            }
        }

        private string _Address2;
        /// <summary></summary>
        public string Address2
        {
            get
            {
                return this._Address2;
            }
            set
            {
                this._Address2 = value;
            }
        }

        private string _City;
        /// <summary></summary>
        public string City
        {
            get
            {
                return this._City;
            }
            set
            {
                this._City = value;
            }
        }

        private string _Region;
        /// <summary>state, province</summary>
        public string Region
        {
            get
            {
                return this._Region;
            }
            set
            {
                this._Region = value;
            }
        }

        private string _PostalCode;
        /// <summary></summary>
        public string PostalCode
        {
            get
            {
                return this._PostalCode;
            }
            set
            {
                this._PostalCode = value;
            }
        }

        private double _Longitude;
        /// <summary></summary>
        public double Longitude
        {
            get
            {
                return this._Longitude;
            }
            set
            {
                this._Longitude = value;
            }
        }

        private double _Lattitude;

        /// <summary></summary>
        public double Lattitude
        {
            get
            {
                return this._Lattitude;
            }
            set
            {
                this._Lattitude = value;
            }
        }
        #endregion

        public Address(string addressId)
            : base(addressId, new Dictionary<string, object>() )
        {
        }

    }
}
